package cn.yangliu.init.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * The type of package-scan.
 *
 * <p>
 * .
 *
 * @author 问道于盲
 * @date 2020 -04-16
 */
@ConfigurationProperties(prefix = "spring.init")
@Data
public class InitProperties {

    /**
     * 开启初始化功能
     */
    private boolean enable = true;

    /**
     * 文件配置
     */
    private Location[] locations;

    /**
     * 使用异步
     */
    private boolean async = false;

    /**
     * 失败继续
     */
    private boolean continueOnFail = true;

    /**
     * 开启事务
     */
    private boolean transactional = true;


    /**
     * 成功后删除文件,只有文件系统中的文件才可以
     */
    private boolean deleteFileAfterSuccess;

    @Data
    public static class Location {

        /**
         * 文件位置
         */
        private String filePath;

        /**
         * 对应的包
         */
        private String scanPackage;

    }

}
